perm filename PASCAL.EJG[UP,DOC]2 blob sn#386373 filedate 1978-10-05 generic text, type C, neo UTF8
COMMENT āŠ—   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	āˆ‚06-Feb-78  0230	EJG  
C00007 ENDMK
CāŠ—;
āˆ‚06-Feb-78  0230	EJG  

There are currently (at least) two versions of PASCAL at the Stanford
A.I. lab.  Neither is considered to be officially supported at the lab,
and the lab user community is small (but growing).

They both seem to be versions of one compiler being developed at
the University of Hamburg (in Germany), led by Dr. H.-H. Nagel.
A brief history of the development of the compiler is contained in
one of the documentation files listed below.

There are unfortunately some incompatibitilies between the old and the
new version.

The older version was put up at SAIL in (May?) 1975 by Mike Farmwald
(PMF).  It was apparently usable but inconvenient and sometimes buggy.
For example, the old compiler produced only a runnable core image,
whereas the newer one produces more flexible relocatable (.REL) object
files.

The newer version was put up at SAIL in February 1978 by Erik Gilbert
(EJG).  It came via LOTS from DECUS, and claims to be the '30-DEC-76'
version from Hamburg.  It is not well tested here yet, but seems to
have fewer bugs and lots more features, as well as lots more user
documentation.


The only existing documentation on the old PASCAL is a brief help file,
which appears at the end of this file.

The documentation for the newer PASCAL is in five files:
	PASINS.EJG[UP,DOC]	One page PASCAL installation guide
	PASNOT.EJG[UP,DOC]	PASCAL local user's notes, from LOTS (and SAIL)
	PASHLP.EJG[UP,DOC]	Six page help file, from LOTS
	PASDOC.EJG[UP,DOC]	History of DEC-10 implementation
	PASMAN.EJG[UP,DOC]	User's manual, assuming prior knowledge
				of PASCAL (from e.g. Wirth's report)

The newer PASCAL is now available via the standard COMPILE class commands
(e.g. "EXECUTE FOO.PAS/LIST").  The more common COMPILE class commands work
as expected, but the user should be warned that there are still some peculiarities
in the way these commands interface to PASCAL.


* * * Instructions for using the OLD PASCAL compiler (slightly updated) * * *

To use the old PASCAL compiler:

.R OPASCA

*FOO.PAS

If no errors,it will say that and then you can run your program by:

.RU FOO
Then when it types the prompt * you hit carriage return.

A manual can be obtained from PMF (Mike Farmwald) for copying.
Tom McWilliams is also an expert (TM).

Note that PASCAL is not supported, indeed the trivial program
PRO1.PAS[1,REM] generates the NO ERROR DETECTED message during
compilation, but then generates ADDRESS CHECK FOR DEVICE TTY<N>
when attempt is made to run the resultant object program.